Attitude Heading Reference System (AHRS) is a type of system for providing information relating to the attitude and moving direction of an object. The information relevant to the attitude of the object may be used in various applications such as automation, navigation, virtual reality, etc. Generally, the AHRS system contains a plurality of multi-axial sensors, such as gyroscopes, accelerometers and magnetometers. The AHRS system collects data information relevant to the attitude of the object (for example, angular velocity, acceleration and magnetic field intensity) via such sensors, calculates the attitude and/or moving direction of the object using specific algorithms and expresses such information.
In some conventional AHRS systems, the attitude of the object relative to an object coordinate system (i.e., a local coordinate system for the object itself) is generally expressed by Euler angles (i.e., nutation angle, precession angle and spin angle corresponding to respective rotation axes). However, an issue of Gimbal lock occurs when the Euler angles are used to express the attitude of the object or the rotation of the object. In other words, when the rotation of the object causes two rotation axes of the three rotation axes to be parallel with each other, the rotation around one rotation axis may overlay over the rotation around another rotation axis, thereby losing a rotational degree of freedom.
One way to avoid such Gimbal lock issue is to describe the attitude of the object using quaternion parameters. A quaternion is defined by a real number element and three other elements i, j, k, wherein i, j and k meet the equation i2+k2+j2=ijk=−1. Each quaternion may be expressed with a linear combination of the elements i, j, k. As the quarternion expression has no singular point similar to the Euler angles, the Gimbal lock issue may not occur when using the quaternion expression to describe the attitude of the object. In the conventional AHRS systems, the angular velocity at which the object moves can be measured with the gyroscope, and further integrated to obtain the attitude of the object expressed with the quarternion.
However, the AHRS system based on the gyroscope is a relative AHRS system. The parameter of the attitude of the object at last time or last moment is needed when determining the attitude of the object. Considering various measurement errors of the gyroscope such as the actual sensitivity error, nonlinearity of sensitivity and the temperature drift of sensitivity, the information relevant to the attitude of the object provided by such relative AHRS system may accumulate measurement errors. Therefore, it is difficult for such system to describe the attitude of the object accurately over a long period.
Therefore, there is a need for a method and an apparatus for determining the attitude of an object stably and accurately.